const Focus = require('../modules/recommend/focusDetail')
const Detail = require('../modules/base/cosmeticsDetail')
const User = require('../modules/user')
const Map = require('../modules/map/classifyFieldMap')
const Like = require('../modules/recommend/likeClassify')

// const arg = process.argv.splice(2)
// (''+Math.random()).split('.')[1]

// const data = await Detail.getDetail()
// for(var i = 0; i < 1; i++) {
//   await (function(){
//     return new Promise(function(res, rej){
//       const random = (''+Math.random()).split('.')[1]
//       (async () => {

//         // 创建用户
//         const userId = await User.register({
//           name: random,
//           password: '123456',
//           email: `${random}@qq.com`,
//           roles: 'user',
//         }).id

//         data.forEach(item => {
//           let random = Math.random() * 1000
//           if (random >= 5) return
      
//           Focus.setFocus({
//             detailId: item.detail_id,
//             userId
//           })
//         })
//         res()
//       })()
//     })
//   }())
// }

async function main() {
  // const data = await Detail.getDetail()

  // data.forEach(item => {
  //   let random = Math.random() * 1000
  //   if (random >= 5) return

  //   Focus.setFocus({
  //     detailId: item.detail_id,
  //     userId: arg[0]
  //   })
  // })

  // const data = await Detail.getDetail({}, 20)
  const map = await Map.getMap({})
  for(var i = 0; i < 50; i++) {
    await (function(){
      return new Promise(function(res, rej){
        const ranUser = (''+Math.random()).split('.')[1]
        ;(async () => {

          // 创建用户
          const user = await User.register({
            name: ranUser,
            password: '123456',
            email: `${ranUser}@qq.com`,
            roles: 'user',
          })

          const userId = JSON.parse(JSON.stringify(user)).id

          let classifyKey = []
          map.forEach(item => {
            let random = Math.random() * 1000
            if (random >= 15) return
            // if(data.length % 3 !== i) return
            // Focus.setFocus({
            //   detailId: item.detail_id,
            //   userId: userId
            // })
            classifyKey.push(item.key)
          })
          if (!classifyKey.length) return
          await Like.setLikeClassify({
            userId,
            classifyKey: JSON.stringify(classifyKey)
          })
          res()
        })()
      })
    }())
  }
}

main()
